package day10;

/*
 * javaBean 
 *  > 类是公共的
 *  > 有一个无参的公共的构造器
 *  > 有attribute 且有对应的get、set方法
 * 
 * this 可以用来修饰： 属性、方法、构造器
 *  python self
 * 
 * this 修饰属性和方法：
 * 	this 理解为当前对象
 *	
 *	在类的方法中，我们可以使用“this.attribute”or"this.method"
 *	调用self.attribute or self.method 
 *	当形参与类属性同名时必须使用this方式
 *
 * this 调用construct
 * 	在类的构造器中可以调用“this(形参列表)”方式，调用其他构造器
 *  构造器中不能通过“this(形参列表)”方式调用自己
 *  如果一个类中有 n 个构造器，最多有 n-1 个构造器
 *  规定：“this(形参列表)”必须声明在当前构造器首行
 *  构造器中最多只能使用一个this
 */

public class Customer {
	// attribute
	private int age;
	private String name;
	private int id;
	
	
	// construct
	public Customer(){
		
	}
	
	public Customer(int age){
		this();
		this.age = age;
	}
	
	public Customer(String name,int age){
		// this()
		this(age);
		this.name = name;
		
	}
		
	
	
	
	// method
	public void setId(int id) {
		this.id = id;
	}
	
	public void setName(String name) {
		this.name = name;
	}
	
	public void setAge(int age) {
		this.age = age;
	}
	
	public String getName() {
		return name;
	}
	
	public int getId() {
		return id;
	}
	
	public int getAge() {
		return age;
	}
	
	public void eat(){
		this.dish();
		System.out.println("吃饭");
	}
	
	public void dish(){
		System.out.println("上了一盘菜");
	}
}
